const { readFile, writeFile } = require('fs')
const { join } = require('path')

// console.log(path)
/**
 {
   join: function () {},
   dirname: function () {},
   basename: function () {},
   resolve: function () {},
   ..........
 }
 */

// 要求：
// 1. 写代码，将所有的图书输出到终端
// fs.readFile(参数, 参数, 参数)
// 读取文件写的 08-books.json，这种相对路径，相对的是终端窗口的路径
// readFile(join(__dirname, '08-books.json'), 'utf-8', (err, data) => {
//   if (err) throw err
//   // console.log(data) // 得到json格式的字符串
//   let arr = JSON.parse(data)
//   console.log(arr)
// })


// 2. 写代码，能够添加新的图书
readFile(join(__dirname, '08-books.json'), 'utf-8', (err, data) => {
  if (err) throw err
  // console.log(data) // 得到json格式的字符串
  let arr = JSON.parse(data)
  // 向数组中，添加一本新的图书
  arr.push({
    id: 5,
    bookname: '完美世界',
    author: '辰东'
  })
  // console.log(arr)
  // 重新写入文件，把全部的图书放到 books.json 中，把原来的覆盖掉
  writeFile(join(__dirname, '08-books.json'), JSON.stringify(arr), err => {
    if (err) throw err
    console.log('添加完成')
  })
})